<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    const list = [
      {
        correctionTime: "2018-11-30",
        departmentName: "总裁办",
        formOfEmployment: 1,
        id: "604f764971f93f3ac8f365c2",
        mobile: "13800000002",
        password: "e10adc3949ba59abbe56e057f20f883e",
        staffPhoto: "http://q6cu3t6jv.bkt.clouddn.com/1063705989926227968?t=1616204161907",
        timeOfEntry: "2018-11-02",
        username: "管理员",
        workNumber: "9002",
      },
      {
        correctionTime: "2018-11-20",
        departmentName: "市场部",
        formOfEmployment: 1,
        id: "604f764971f93f3ac8f365c3",
        mobile: "13800000003",
        password: "e10adc3949ba59abbe56e057f20f883e",
        staffPhoto: "http://q6cu3t6jv.bkt.clouddn.com/1063705989926227968?t=1616204161907",
        timeOfEntry: "2018-11-04",
        username: "孙财",
        workNumber: "111",
      }
    ]

    function transZhKeyToExcel(list) {
      //中引文的映射对象
      const mapInfo = {
        'id': '编号',
        'password': '密码',
        'mobile': '手机号',
        'username': '姓名',
        'timeOfEntry': '入职日期',
        'formOfEmployment': '聘用形式',
        'correctionTime': '转正日期',
        'workNumber': '工号',
        'departmentName': '部门',
        'staffPhoto': '头像地址'
      }
   //header =  ['转正日期', '部门', '聘用形式', '编号', '手机号', '密码', '头像地址', '入职日期', '姓名', '工号']
  //  生成表头 通过下标找到数组里面的数据list[0]，判断有没有数据，
  //  没数据就返回，有数据就往下执行，通过Object.keys(one)拿到所有英文k。
  //  在遍历所有英文k放进mapInfo里mapInfo[enkey], 通过映射对象。找到相同数据里面的值作为中文k。
      // 1.生成表头 
      const one = list[0]
      if (!one) return
      const tHeader = Object.keys(one).map(enkey => {
        return mapInfo[enkey]
      })

      // 生成表的内容 使用map方法直接给最大数组遍历获取每个对象，
      // 在用Object.value(item)获取对象里面每一个值。将每个数组存储到大数组里
      // 2.生成表的内容 data  
      const data = list.map(item => {
        return Object.values(item)
      })
      return { tHeader, data }
    }
    const { tHeader, data } = transZhKeyToExcel(list)
    console.log(tHeader, '生成的表头');
    console.log(data, '生成表的内容');
  </script>
</body>

</html>